#include<iostream>
#include<vector>
using namespace std;
const long long maxn=1000000;
long long isprime[maxn+1];
void sieve() {
  fill(isprime, isprime+maxn, 1);
  isprime[0]=isprime[1]=false;
  for(long long  i=2; i<=maxn; ++i) {
    if(isprime[i])for(int j=i*2; j<=maxn; j+=i)isprime[j]=0;
    isprime[i] = isprime[i-1] + isprime[i];
  }
}
int main() {
  ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
  sieve();
  int num;
  while(cin>>num) cout<<isprime[num]<<'\n';
  return 0;
}
